<script setup>
import { onLaunch, onShow, onHide } from '@dcloudio/uni-app';
const { proxy } = getCurrentInstance();
let { login, localLogin } = proxy.$store.user.useUserStore();

onLaunch(() => {
  console.log('App Launch');
});
onShow(async () => {
  console.log('App Show');

  // #ifndef MP-WEIXIN
  uni.hideTabBar(); // 隐藏原生tabBar
  localLogin();
  // #endif

  // #ifdef MP-WEIXIN
  getUpdateManager();
  await login(); // 静默登录
  // #endif
});
onHide(() => {
  console.log('App Hide');
});

// 小程序更新 https://uniapp.dcloud.net.cn/api/other/update.html
function getUpdateManager() {
  const updateManager = uni.getUpdateManager();

  // 请求完新版本信息时回调 res: {hasUpdate: true}
  updateManager.onCheckForUpdate(function (res) {
    if (res.hasUpdate) {
      // 有更新
      // uni.showLoading({ title: '更新中...' });
    }
  });

  // 新版本下载完成时回调
  updateManager.onUpdateReady(function () {
    // uni.hideLoading(); // 关闭 Loading
    uni.showModal({
      // 弹确认框（强制更新）
      title: '更新提示',
      content: '新版本已经准备好，是否重启应用？',
      success: function (res) {
        if (res.confirm) {
          // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
          updateManager.applyUpdate();
        }
      },
    });
  });

  // 新版本下载失败时回调
  updateManager.onUpdateFailed(function () {
    // uni.hideLoading(); // 关闭 Loading
    uni.showModal({
      title: '更新提示',
      content: '检查到有新版本，但由于网络原因等下载失败，请您删除当前小程序后重新搜索打开哟~',
      confirmText: '好的',
      showCancel: false,
    });
  });
}
</script>

<style lang="scss">
/*每个页面公共css */
@import 'uview-plus/index.scss';

page {
  height: 100%;
  overflow: hidden; // 超出部分隐藏，也可用于禁止页面上下回弹
}
</style>
